﻿using System.Windows.Media;

namespace GestureSign.CorePlugins
{
    internal class IconSource
    {
        internal static Geometry Keyboard
        {
            get { return Geometry.Parse("M0 864l1024 0 0-704L0 160 0 864zM965 806 59 806 59 218l907 0L965 806zM374 327 277 327l0 95 97 0L374 327zM526 327 430 327l0 95 97 0L526 327zM679 327 582 327l0 95 97 0L679 327 679 327zM661 579l94 0L755 484l-94 0L661 579zM215 325 118 325l0 95 97 0L215 325zM303 484 120 484l0 95 182 0L303 484zM360 579l97 0L456 484 360 484 360 579zM513 579l97 0L610 484 513 484 513 579zM120 736l97 0 0-95L120 641 120 736zM275 736l472 0 0-95L275 641 275 736zM806 580l97 0L903 327l-162 0 0 95 65 0 0 158L806 580zM805 736l97 0 0-95-97 0L805 736z"); }
        }

        internal static Geometry Window
        {
            get { return Geometry.Parse("M96.089 171.682l0 684.236 831.822 0L927.911 171.682 96.089 171.682zM884.178 811.543 140.464 811.543 140.464 406.441l743.714 0L884.178 811.543z"); }
        }

        internal static Geometry GestureSign
        {
            get { return Geometry.Parse("M347.5 45c-18.2 3.5-27.5 6.3-41.5 12.3-45.7 19.7-86.8 47-121.8 81-16.4 16-26.4 27.8-41.3 48.7-26 36.2-47.3 75.3-58 106.5-9.7 28.3-13.3 48.5-13.3 74.5 0 33 5.8 51.2 21.2 67.3 18.4 19.4 48.4 31.8 84 34.7 16.3 1.4 23.8 1 42-2.5 32.7-6.3 59.4-19 95.5-45.2 10.5-7.6 22-16 25.5-18.4 8.2-6 27.8-18 29-18 1 0 5 10 5 12.8 0 7 13.8 25 20.8 27.3 2 .8 5.6 1 9 .5 5.2-.6 6-1 11.8-7 3.4-3.4 7.3-8.7 8.8-11.8 2.5-5 2.7-6.3 2.2-13-.3-4-.8-18.8-1.2-33-.7-27.2 0-39.6 3.7-60.2 1.2-6 3-19.6 4-30 2.2-20 5.5-44 6.5-46.8 1-2.2-1.3-8.7-4-11.5-3.7-4.2-7.2-5.3-21.4-6.4l-13.7-1.2-4.6 2.7c-3.2 2-7 6-13.4 14.4-14.4 19.2-24 28.2-45 42.2-27 17.7-63.8 35.6-78.6 38-8 1.2-11.2 3.6-11.2 8 0 6.8 9.2 9.8 33 10.7 18.6.7 25-.2 42.6-5.3 16.5-4.8 17-5 17-3.3 0 2.4-7.5 13-14.2 20.5-8.4 9.2-25 23.2-39 33-38.4 27-66.5 37.6-100 37.6-10.5 0-12.5-.2-17.3-2.4-9-4.2-16-10-19-15.8-4.4-9.3-5.7-31.7-3-54.8 2-19.2 5.5-29 18.5-54.5 12.4-24.4 24.2-42.8 40-62.5 9-11.5 41.8-44.6 51.6-52.3 33-26 75.2-47.7 92.2-47.7 1.8 0 8 2.5 14.8 6 9.6 5.2 12.8 6.3 18 6.8 17.4 1.4 30.7-10 34.5-29.5 1.2-5.3 1-7.3-.3-14-2.3-10.7-6-17.5-13-24.7-10.2-10.3-24.2-16.7-36-16.5-3.5 0-12.5 1.4-20.2 3z"); }
        }

        internal static Geometry Windows
        {
            get { return Geometry.Parse("M480 480h480V57.6L480 131.2zM416 480V140.8L64 195.2V480zM416 544H64v284.8l352 54.4zM480 544v348.8l480 73.6V544z"); }
        }

        internal static Geometry Mouse
        {
            get { return Geometry.Parse("M794 596q18 17 8 39-10 23-34 23H550l115 272q6 14 0 28t-19 20l-101 43q-14 6-28 0t-20-19l-109-258-178 178q-11 11-26 11-7 0-14-3-23-10-23-34V37Q146 13 169 3q7-3 14-3 15 0 26 11z"); }
        }

        internal static Geometry Open
        {
            get { return Geometry.Parse("M722 783c18 0 40-12 48-28l154-290c9-18-4-28-28-28l-155 0 0-69c0-24-19-43-43-43l-379 0-28-74c-3-8-10-13-19-13l-154 0c-5 0-10 2-14 6-4 4-6 9-6 14l0 110-1 373c0 24 19 43 43 43L722 783zM701 436l-338 0c-16 0-30 13-38 28l-138 279-47 0c-2 0-4-2-4-4l0-373 0-90 121 0 28 74c3 8 10 13 19 13l393 0c2 0 4 2 4 4L701 436"); }
        }

        internal static Geometry Command
        {
            get { return Geometry.Parse("M64 112v800h896V112H64z m846 750H114V162h796v700zM234.6 688.8L411.3 512 234.6 335.2l35.4-35.4L482.1 512 269.9 724.1l-35.3-35.3z m554.8-10.2h-300v-50h300v50z"); }
        }

        internal static Geometry Brightness
        {
            get { return Geometry.Parse("M880 549v-58H1011V549H880zM756 229l89-89 45 44-89 90-45-45zM707 717c-56 55-122 82-200 82-78 0-145-27-200-82-56-56-83-122-83-200 0-79 27-146 83-201 56-56 122-83 200-83 78 0 145 27 200 83 56 56 83 122 83 201 0 78-27 144-83 200zm-44-356c-43-43-95-64-156-64-60 0-112 22-155 65-43 43-64 95-64 156 0 61 22 112 64 155 43 43 95 64 155 64 62 0 113-21 156-64 43-43 64-95 64-155 0-62-21-113-64-156zM489 13h59v130h-58V13zM139 179l44-45 90 89-45 45-89-89zm4 356H12V476h131v59zm124 262l-89 89-45-45 89-89 45 45zM533 1012H475V881h59V1012zM884 846l-45 45-89-89 45-45 89 89z"); }
        }

        internal static Geometry Volume
        {
            get { return Geometry.Parse("M540.3 99.7c-6.5-3-13.4-4.3-20.2-4.3-11 0-23 4-32 12l-230 202H113c-27 0-49 22-49 49V668c0 27 22 49 49 49h144.8L488 916.7c9.2 7.8 20.6 12 32 12 7 0 14-1.5 20.4-4.5 17.4-8 28.6-25.3 28.6-44.5V144.3c0-19.2-11.2-36.6-28.7-44.6zm-20.2 780L276 668H113V358.5h163l244.4-214v735.3zM667 391v49c45 0 81.5 36.4 81.5 81.4 0 45-36.5 81.5-81.5 81.5v48c72 0 130.4-58.5 130.4-130.5s-58.6-130-130.6-130zm130.4-132v56c68.5 43.2 114 119.4 114 206.4S866 684.7 797.4 728v56c96.5-48 163-147.4 163-262.6 0-115-66.5-214.5-163-262.5z"); }
        }

        internal static Geometry Browser
        {
            get { return Geometry.Parse("M513 62c-248 0-449 201-449 449 0 248 201 449 449 449 248 0 449-201 449-449 0-248-201-449-449-449zm390 435H730c-2-64-13-126-33-182 39-16 75-38 108-64 59 66 95 151 99 245zM497 901c-48-40-88-92-118-153 38-12 78-18 120-20v172c-1 0-1 0-2 0zM529 121c55 46 99 106 129 178-41 14-85 22-131 24V120c1 0 1 0 2 0zm48 5c80 13 152 51 207 105-30 23-63 43-99 58-26-63-63-118-108-163zm-79-5v201c-46-1-90-10-131-24 30-71 75-132 129-178 1 0 1 0 2 0zM341 288c-36-15-69-35-99-58 56-54 128-91 208-105-45 45-82 100-108 163zm16 37c45 15 92 25 142 26v146h-173c2-61 12-119 31-172zm142 201v175c-46 1-90 9-131 22-25-60-40-126-42-197h173zM449 896c-72-12-137-43-190-88 29-20 59-37 92-49 25 52 58 99 97 138zm79 5v-172c42 1 82 8 120 20-30 61-70 113-118 153 0 0-1 0-2 0zm147-143c33 13 64 30 92 49-53 45-118 77-190 88 39-39 72-85 97-138zm-15-36c-42-13-86-21-131-22V525h173c-2 71-17 137-42 197zM527 496V351c50-2 97-11 142-26 19 53 30 111 31 172H527zM221 251c33 26 69 47 108 64-20 56-32 117-33 182H123c3-94 40-180 99-245zm-99 274H296c2 74 17 144 44 207-37 14-71 33-102 56-68-68-111-160-115-263zm666 263c-32-23-66-42-102-56 26-63 42-133 44-207H903c-4 102-47 195-115 263z"); }
        }

        internal static Geometry MaximizeRestore
        {
            get { return Geometry.Parse("M1016.5 724.4H834v236.8h-61.7v-1h-648v1H62.8V298.8h236v-236H1078v661.6h-61.5zm-892.2 174h648v-538h-648v538zm892.2-774H360.3v174.4H834v364h182.5V124.4z"); }
        }

        internal static Geometry Minimize
        {
            get { return Geometry.Parse("M63.7 447.8h894.7v128H63.7v-128zm0 0"); }
        }


    }
}
